package framework.log;

import java.io.IOException;
import java.io.RandomAccessFile;
import java.util.Date;
import java.util.logging.Logger;

import framework.Utiles;

public class Log14 {

	private static Logger miLogger = Logger.getLogger("com.darwinsys");

	public static void throwing(String clase, String metodo, Throwable t) {
		miLogger.throwing(clase, metodo, t);

		String mensaje = "Exception en " + clase + "." + metodo + ":"
				+ t.getMessage();
		miLogger.severe(mensaje);

		try {
			sacarAFichero("GRAVE", mensaje);
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

	public static void info(String mensaje) {
		miLogger.info(mensaje);
		try {
			sacarAFichero("INFO", mensaje);
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

	private static void sacarAFichero(String tipo, String mensaje)
			throws IOException {
		RandomAccessFile miRAFile;
		String s = tipo + ":" + mensaje + "\n";

		// Abrimos el fichero de acceso aleatorio
		miRAFile = new RandomAccessFile(Utiles.FICHERO_LOG, "rw");
		// Nos vamos al final del fichero
		miRAFile.seek(miRAFile.length());

		java.util.Date fecha = new Date();

		miRAFile.writeBytes(fecha.toString()+"\n");
		// Incorporamos la cadena al fichero
		miRAFile.writeBytes(s);
		// Cerramos el fichero
		miRAFile.close();

	}

}
